The current Universal Serial Bus technology uses Universal Serial Bus block transport protocol, and has ease of use. In general, devices using this technology are classified into:
Driverless device: a device using a driver built in the operating system to load the device, and
Driver device: a device requiring a driver from the manufacturer.
Traditionally, information security devices have been provided in a driver from the manufacturer, which is a so-called driver device. Such a device is often designed as a customized device of the developer. Later, driverless software protection products are introduced to the market, whose drivers are provided directly by the operating system, and are so-called driverless devices, for example, ROCKEY2, from FEITIAN Technologies Co., Ltd, which uses a low-speed Human Interface Device (HID) as its communication protocol. Compared with other driver information security devices, driverless information security device is much slower in data transfer. Generally, such driverless protocol as HID is only used for mouse, keyboard and other input devices for which the data volume to be handled by the system is small.
The main shortcoming of a driver information security device is the inconvenience of use, and the particularity of either software protection device or other information security device, i.e., the driver provided to an end user can be of different versions and developed by different developers. When such a driver is developed by different developers, a problem may arise in that user may face two different versions of a driver for devices of same kind that may collide with each other and lead to a failure in user installation and even a crash of the system. Nevertheless, the installation process of the driver per se is a potential threat and source of corruption for the operating system.
The main shortcoming of a driverless software protection device widely used is low speed. Therefore, a conventional HID device cannot meet the requirements of current information security devices.
The main problem inherent in driverless Universal Serial Bus devices is that the communication with the host is determined by the protocol that is defined on the host, i.e., the Universal Serial Bus protocol. Therefore, in order to improve the transfer speed, the transfer protocol should be improved and a high-speed protocol should be selected to meet the requirements of such an information security device.
For a software protection device or other information security devices, these two shortcomings are unacceptable. First, the main performance indications of information security device are the running speed and communication rate. The running speed is the speed at which instructions are run in the device, which is mainly limited by algorithms and the CPU speed, and cannot be improved dramatically. To improve the performance, the key is the communication speed. A driverless low-speed device cannot meet the best operating state, and therefore leads to low running efficiency of user program. On the other hand, since there are many kinds of developer's programs, in case of a driver customized device, the driver has to be installed in all end users' computers using the program, which causes inconvenient use of developers' program. Finally, when a developer offers a small program, since the driver is a special program that exists in the user's computer, the existence of the driver per se is a potential threat (such as causing instability of system) to the user's computer system, and causes waste of resources.
The USB flash memory, which has been popular since 2002, is a high-speed device based on Universal Serial Bus, but such USB flash is used mainly for data storage, and no CPU and self-defined algorithm exist therein, so it cannot be applied to software protection or an information security device.